<template>
  <el-dialog
      :title="!dataForm.id ? '新增' : '修改'"
      v-if="isAuth(['ROOT'])"
      :close-on-click-modal="false"
      v-model="visible"
      width="420px"
  >
    <el-form :model="dataForm" ref="dataForm" :rules="dataRule" label-width="80px">
      <el-form-item label="违纪类型" prop="type">
        <el-input v-model="dataForm.type" size="medium" style="width:100%" clearable/>
      </el-form-item>
      <el-form-item label="罚款金额" prop="money">
        <el-input v-model="dataForm.money" size="medium" style="width:100%" clearable/>
      </el-form-item>
    </el-form>
    <template #footer>
			<span class="dialog-footer">
				<el-button size="medium" @click="visible = false">取消</el-button>
				<el-button type="primary" size="medium" @click="dataFormSubmit">确定</el-button>
			</span>
    </template>
  </el-dialog>
</template>

<script>
import {h} from "vue";

export default {
  data: function () {
    return {
      visible: false,
      dataForm: {
        id: null,
        type: null,
        money: null
      },
      dataRule: {
        type: [{required: true, pattern: '^[a-zA-Z0-9\u4e00-\u9fa5]{2,10}$', message: '违纪类型格式错误'}],
        money: [
          {
            required: true,
            pattern: '(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)',
            message: '罚款金额格式错误'
          }
        ]
      }
    };
  },
  methods: {
    init: function (id) {
      let that = this;
      that.dataForm.id = id || 0;
      that.visible = true;
      that.$nextTick(() => {
        that.$refs['dataForm'].resetFields();
        if (id) {
          that.$http('amect_type/searchById', 'POST', {id: id}, true, function (resp) {
            that.dataForm.type = resp.type;
            that.dataForm.money = resp.money + "";
          });
        }
      });
    },
    dataFormSubmit: function () {
      let that = this;
      let data = {
        type: that.dataForm.type,
        money: that.dataForm.money
      };
      if (that.dataForm.id) {
        data.id = that.dataForm.id;
      }
      console.log(data);
      this.$refs['dataForm'].validate(valid => {
        if (valid) {
          that.$http(`amect_type/${!that.dataForm.id ? 'insert' : 'update'}`, 'POST',data, true, function (resp) {
            if (resp.rows > 0) {
              that.visible = false;
              that.$emit('refreshDataList');
              that.$message({
                message: '操作成功',
                type: 'success',
                duration: 1200
              });
            } else {
              that.$message({
                message: '操作失败',
                type: 'error',
                duration: 1200
              });
            }
          });
        } else {
          console.log(valid);
        }
      });
    }

  }
};
</script>

<style lang="less" scoped="scoped"></style>
